;(() => {
  // 函数类型：通过接口的方式实现函数类型
  console.log('----------------- 函数类型 --------------------')
  // 定义一个接口，用来作为某个函数的类型使用
  interface ISearchFunc {
    // 定义一个调用签名
    // ()里面规定函数参数：后面规定返回值类型
    (source: string, subString: string): boolean
  }
  // 定义一个函数，该类型就是上面定义的接口
  const searchString:ISearchFunc = function (source,subString) {
    return source.search(subString) > -1
  }
  // 调用函数
  console.log(searchString('哈哈，我又变帅了','帅'))
})()
